package ArrayDemo1;

/**
 * Created by sunwei on 2017/10/12
 * Time:17:42
 */
public class ArrayApp {
    public static void main(String[] args) {
        /*
        定义一个数组
         */
        long[] arr;
        /*
        初始化数组
         */
        arr = new long[100];

        /*
        定义一个整型变量
         */
        int nElems = 0;
        int j;
        long searchKey;
        arr[0] = 77;
        arr[1] = 99;
        arr[2] = 44;
        arr[3] = 55;
        arr[4] = 22;
        arr[5] = 88;
        arr[6] = 11;
        arr[7] = 00;
        arr[8] = 66;
        arr[9] = 33;
        nElems = 10;

        /*
        循环显示数组里面的信息
         */
        System.out.println("添加数据后，数组里面的信息为：");
        for(j = 0;  j<nElems ; j++) {
            System.out.print(arr[j] + " ");
        }
            System.out.println(" ");
        /*
        循环查找值为66的元素
         */
        System.out.println("查找值为66的元素");
        searchKey = 66;
        for(j = 0; j<nElems ; j++) {
            if (arr[j] == searchKey) {
                  break;
            }
        }
        /*
        如果j的值等于nElems,那说明没找到这个元素
         */
        if (j==nElems) {
              System.out.println("Can't find"+searchKey);
        }else {//否则找到了，并且打印66
            System.out.println("Found "+searchKey);
        }
        /*
        再设置searchKey得值为55，下面代码就是删除值为55的元素
         */
        searchKey = 55;
        /*
        查找数组里面等于55的元素下标
         */
        for(j = 0; j <nElems ; j++) {
            if (arr[j] == searchKey) {
                  break;
            }
        }
        /*
        让等于55下标后面的元素的元素向前移这样就删除了55这个元素下标的值
         */
        for(int k = j;  k<nElems ; k++) {
            arr[k] = arr[k+1];
        }
        /*
        这样的话元素值就减一
         */
        nElems--;
        /*
        再遍历显示数组里面的元素
         */
        System.out.println("删除数组里面值为55的元素");
        for(j = 0;j<nElems ; j++) {
            System.out.print(arr[j]+ " ");
            System.out.println(" ");
        }
    }
}
